	.file	1 "b64_encode.c"
	.section .mdebug.abi32
	.previous
	.abicalls
	.text
	.align	2
	.globl	init_encode_block
	.ent	init_encode_block
init_encode_block:
	.frame	$fp,16,$ra		# vars= 0, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,16
	.cprestore 0
	sw	$fp,12($sp)
	sw	$gp,8($sp)
	move	$fp,$sp
	sw	$a0,16($fp)
	lw	$v0,16($fp)
	sb	$zero,0($v0)
	lw	$v0,16($fp)
	sb	$zero,1($v0)
	lw	$v0,16($fp)
	sb	$zero,2($v0)
	move	$sp,$fp
	lw	$fp,12($sp)
	addu	$sp,$sp,16
	j	$ra
	.end	init_encode_block
	.size	init_encode_block, .-init_encode_block
	.align	2
	.globl	init_buffer
	.ent	init_buffer
init_buffer:
	.frame	$fp,16,$ra		# vars= 0, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,16
	.cprestore 0
	sw	$fp,12($sp)
	sw	$gp,8($sp)
	move	$fp,$sp
	sw	$a0,16($fp)
	lw	$v0,16($fp)
	sb	$zero,0($v0)
	lw	$v0,16($fp)
	sb	$zero,1($v0)
	move	$sp,$fp
	lw	$fp,12($sp)
	addu	$sp,$sp,16
	j	$ra
	.end	init_buffer
	.size	init_buffer, .-init_buffer
	.align	2
	.globl	read_from_input
	.ent	read_from_input
read_from_input:
	.frame	$fp,48,$ra		# vars= 8, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,48
	.cprestore 16
	sw	$ra,40($sp)
	sw	$fp,36($sp)
	sw	$gp,32($sp)
	move	$fp,$sp
	sw	$a0,48($fp)
	sw	$a1,52($fp)
	sw	$zero,24($fp)
	lw	$a0,48($fp)
	la	$t9,init_encode_block
	jal	$ra,$t9
	lw	$v0,52($fp)
	lhu	$v0,12($v0)
	srl	$v0,$v0,5
	andi	$v0,$v0,0x1
	bne	$v0,$zero,$L20
	lw	$a0,48($fp)
	li	$a1,1			# 0x1
	li	$a2,1			# 0x1
	lw	$a3,52($fp)
	la	$t9,fread
	jal	$ra,$t9
	sw	$v0,24($fp)
	lw	$v1,24($fp)
	li	$v0,1			# 0x1
	bne	$v1,$v0,$L23
	lw	$v0,48($fp)
	addu	$v0,$v0,1
	move	$a0,$v0
	li	$a1,1			# 0x1
	li	$a2,1			# 0x1
	lw	$a3,52($fp)
	la	$t9,fread
	jal	$ra,$t9
	move	$v1,$v0
	lw	$v0,24($fp)
	addu	$v0,$v0,$v1
	sw	$v0,24($fp)
	lw	$v1,24($fp)
	li	$v0,2			# 0x2
	bne	$v1,$v0,$L23
	lw	$v0,48($fp)
	addu	$v0,$v0,2
	move	$a0,$v0
	li	$a1,1			# 0x1
	li	$a2,1			# 0x1
	lw	$a3,52($fp)
	la	$t9,fread
	jal	$ra,$t9
	move	$v1,$v0
	lw	$v0,24($fp)
	addu	$v0,$v0,$v1
	sw	$v0,24($fp)
	b	$L23
$L20:
	li	$v0,-1			# 0xffffffffffffffff
	sw	$v0,28($fp)
	b	$L19
$L23:
	lw	$v0,24($fp)
	sw	$v0,28($fp)
$L19:
	lw	$v0,28($fp)
	move	$sp,$fp
	lw	$ra,40($sp)
	lw	$fp,36($sp)
	addu	$sp,$sp,48
	j	$ra
	.end	read_from_input
	.size	read_from_input, .-read_from_input
	.align	2
	.globl	get_encoding
	.ent	get_encoding
get_encoding:
	.frame	$fp,24,$ra		# vars= 8, regs= 2/0, args= 0, extra= 8
	.mask	0x50000000,-4
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,24
	.cprestore 0
	sw	$fp,20($sp)
	sw	$gp,16($sp)
	move	$fp,$sp
	move	$v0,$a0
	sb	$v0,8($fp)
	lbu	$v0,8($fp)
	sltu	$v0,$v0,26
	beq	$v0,$zero,$L25
	lbu	$v0,8($fp)
	addu	$v0,$v0,65
	sll	$v0,$v0,24
	sra	$v0,$v0,24
	sw	$v0,12($fp)
	b	$L24
$L25:
	lbu	$v0,8($fp)
	sltu	$v0,$v0,26
	bne	$v0,$zero,$L26
	lbu	$v0,8($fp)
	sltu	$v0,$v0,52
	beq	$v0,$zero,$L26
	lbu	$v0,8($fp)
	addu	$v0,$v0,71
	sll	$v0,$v0,24
	sra	$v0,$v0,24
	sw	$v0,12($fp)
	b	$L24
$L26:
	lbu	$v0,8($fp)
	sltu	$v0,$v0,52
	bne	$v0,$zero,$L27
	lbu	$v0,8($fp)
	sltu	$v0,$v0,62
	beq	$v0,$zero,$L27
	lbu	$v0,8($fp)
	addu	$v0,$v0,-4
	sll	$v0,$v0,24
	sra	$v0,$v0,24
	sw	$v0,12($fp)
	b	$L24
$L27:
	lbu	$v1,8($fp)
	li	$v0,62			# 0x3e
	bne	$v1,$v0,$L28
	li	$v0,43			# 0x2b
	sw	$v0,12($fp)
	b	$L24
$L28:
	lbu	$v1,8($fp)
	li	$v0,63			# 0x3f
	bne	$v1,$v0,$L29
	li	$v0,47			# 0x2f
	sw	$v0,12($fp)
	b	$L24
$L29:
	lb	$v0,8($fp)
	sw	$v0,12($fp)
$L24:
	lw	$v0,12($fp)
	move	$sp,$fp
	lw	$fp,20($sp)
	addu	$sp,$sp,24
	j	$ra
	.end	get_encoding
	.size	get_encoding, .-get_encoding
	.align	2
	.globl	push_bit_to_buffer
	.ent	push_bit_to_buffer
push_bit_to_buffer:
	.frame	$fp,48,$ra		# vars= 8, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,48
	.cprestore 16
	sw	$ra,40($sp)
	sw	$fp,36($sp)
	sw	$gp,32($sp)
	move	$fp,$sp
	sw	$a0,48($fp)
	move	$v0,$a1
	sw	$a2,56($fp)
	sb	$v0,24($fp)
	lw	$v1,48($fp)
	lw	$v0,48($fp)
	lbu	$v0,0($v0)
	sll	$v0,$v0,1
	sb	$v0,0($v1)
	lbu	$v0,24($fp)
	beq	$v0,$zero,$L31
	lw	$v1,48($fp)
	lw	$v0,48($fp)
	lbu	$v0,0($v0)
	ori	$v0,$v0,0x1
	sb	$v0,0($v1)
$L31:
	lw	$v1,48($fp)
	lw	$v0,48($fp)
	lbu	$v0,1($v0)
	addu	$v0,$v0,1
	sb	$v0,1($v1)
	lw	$v0,48($fp)
	lbu	$v1,1($v0)
	li	$v0,6			# 0x6
	bne	$v1,$v0,$L30
	lw	$v0,48($fp)
	lbu	$v0,0($v0)
	move	$a0,$v0
	la	$t9,get_encoding
	jal	$ra,$t9
	sb	$v0,25($fp)
	addu	$v0,$fp,25
	move	$a0,$v0
	li	$a1,1			# 0x1
	li	$a2,1			# 0x1
	lw	$a3,56($fp)
	la	$t9,fwrite
	jal	$ra,$t9
	lw	$a0,48($fp)
	la	$t9,init_buffer
	jal	$ra,$t9
$L30:
	move	$sp,$fp
	lw	$ra,40($sp)
	lw	$fp,36($sp)
	addu	$sp,$sp,48
	j	$ra
	.end	push_bit_to_buffer
	.size	push_bit_to_buffer, .-push_bit_to_buffer
	.align	2
	.globl	write_to_buffer
	.ent	write_to_buffer
write_to_buffer:
	.frame	$fp,48,$ra		# vars= 8, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,48
	.cprestore 16
	sw	$ra,40($sp)
	sw	$fp,36($sp)
	sw	$gp,32($sp)
	move	$fp,$sp
	sw	$a0,48($fp)
	move	$v0,$a1
	sw	$a2,56($fp)
	sw	$a3,60($fp)
	sb	$v0,24($fp)
	li	$v1,7			# 0x7
	lw	$v0,56($fp)
	subu	$v1,$v1,$v0
	li	$v0,1			# 0x1
	sll	$v0,$v0,$v1
	sb	$v0,27($fp)
	lbu	$v0,60($fp)
	sb	$v0,26($fp)
$L34:
	lbu	$v0,26($fp)
	bne	$v0,$zero,$L37
	b	$L33
$L37:
	lbu	$v1,24($fp)
	lbu	$v0,27($fp)
	and	$v0,$v1,$v0
	sb	$v0,25($fp)
	lbu	$v0,27($fp)
	srl	$v0,$v0,1
	sb	$v0,27($fp)
	lbu	$v0,25($fp)
	lw	$a0,48($fp)
	move	$a1,$v0
	lw	$a2,64($fp)
	la	$t9,push_bit_to_buffer
	jal	$ra,$t9
	lbu	$v0,26($fp)
	addu	$v0,$v0,-1
	sb	$v0,26($fp)
	b	$L34
$L33:
	move	$sp,$fp
	lw	$ra,40($sp)
	lw	$fp,36($sp)
	addu	$sp,$sp,48
	j	$ra
	.end	write_to_buffer
	.size	write_to_buffer, .-write_to_buffer
	.rdata
	.align	2
$LC0:
	.ascii	"=\000"
	.text
	.align	2
	.globl	push_padding
	.ent	push_padding
push_padding:
	.frame	$fp,40,$ra		# vars= 0, regs= 3/0, args= 16, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,40
	.cprestore 16
	sw	$ra,32($sp)
	sw	$fp,28($sp)
	sw	$gp,24($sp)
	move	$fp,$sp
	sw	$a0,40($fp)
	la	$a0,$LC0
	li	$a1,1			# 0x1
	li	$a2,1			# 0x1
	lw	$a3,40($fp)
	la	$t9,fwrite
	jal	$ra,$t9
	move	$sp,$fp
	lw	$ra,32($sp)
	lw	$fp,28($sp)
	addu	$sp,$sp,40
	j	$ra
	.end	push_padding
	.size	push_padding, .-push_padding
	.rdata
	.align	2
$LC1:
	.ascii	"\n\000"
	.text
	.align	2
	.globl	encode_file
	.ent	encode_file
encode_file:
	.frame	$fp,72,$ra		# vars= 24, regs= 3/0, args= 24, extra= 8
	.mask	0xd0000000,-8
	.fmask	0x00000000,0
	.set	noreorder
	.cpload	$t9
	.set	reorder
	subu	$sp,$sp,72
	.cprestore 24
	sw	$ra,64($sp)
	sw	$fp,60($sp)
	sw	$gp,56($sp)
	move	$fp,$sp
	sw	$a0,72($fp)
	sw	$a1,76($fp)
	sw	$zero,52($fp)
$L40:
	addu	$v0,$fp,40
	move	$a0,$v0
	lw	$a1,72($fp)
	la	$t9,read_from_input
	jal	$ra,$t9
	sw	$v0,48($fp)
	lw	$v1,48($fp)
	li	$v0,3			# 0x3
	beq	$v1,$v0,$L42
	b	$L41
$L42:
	addu	$a0,$fp,32
	la	$t9,init_buffer
	jal	$ra,$t9
	lbu	$v1,40($fp)
	lw	$v0,76($fp)
	sw	$v0,16($sp)
	addu	$a0,$fp,32
	move	$a1,$v1
	move	$a2,$zero
	li	$a3,8			# 0x8
	la	$t9,write_to_buffer
	jal	$ra,$t9
	lbu	$v1,41($fp)
	lw	$v0,76($fp)
	sw	$v0,16($sp)
	addu	$a0,$fp,32
	move	$a1,$v1
	move	$a2,$zero
	li	$a3,8			# 0x8
	la	$t9,write_to_buffer
	jal	$ra,$t9
	lbu	$v1,42($fp)
	lw	$v0,76($fp)
	sw	$v0,16($sp)
	addu	$a0,$fp,32
	move	$a1,$v1
	move	$a2,$zero
	li	$a3,8			# 0x8
	la	$t9,write_to_buffer
	jal	$ra,$t9
	lw	$v0,52($fp)
	addu	$v0,$v0,1
	sw	$v0,52($fp)
	lw	$a0,52($fp)
	li	$v0,1808400384			# 0x6bca0000
	ori	$v0,$v0,0x1af3
	mult	$a0,$v0
	mfhi	$v0
	sra	$v1,$v0,3
	sra	$v0,$a0,31
	subu	$v1,$v1,$v0
	move	$v0,$v1
	sll	$v0,$v0,2
	addu	$v0,$v0,$v1
	sll	$v0,$v0,2
	subu	$v0,$v0,$v1
	subu	$v0,$a0,$v0
	bne	$v0,$zero,$L40
	la	$a0,$LC1
	li	$a1,1			# 0x1
	li	$a2,1			# 0x1
	lw	$a3,76($fp)
	la	$t9,fwrite
	jal	$ra,$t9
	b	$L40
$L41:
	lw	$v1,48($fp)
	li	$v0,2			# 0x2
	bne	$v1,$v0,$L44
	addu	$a0,$fp,32
	la	$t9,init_buffer
	jal	$ra,$t9
	lbu	$v1,40($fp)
	lw	$v0,76($fp)
	sw	$v0,16($sp)
	addu	$a0,$fp,32
	move	$a1,$v1
	move	$a2,$zero
	li	$a3,8			# 0x8
	la	$t9,write_to_buffer
	jal	$ra,$t9
	lbu	$v1,41($fp)
	lw	$v0,76($fp)
	sw	$v0,16($sp)
	addu	$a0,$fp,32
	move	$a1,$v1
	move	$a2,$zero
	li	$a3,8			# 0x8
	la	$t9,write_to_buffer
	jal	$ra,$t9
	lw	$v0,76($fp)
	sw	$v0,16($sp)
	addu	$a0,$fp,32
	move	$a1,$zero
	move	$a2,$zero
	li	$a3,2			# 0x2
	la	$t9,write_to_buffer
	jal	$ra,$t9
	lw	$a0,76($fp)
	la	$t9,push_padding
	jal	$ra,$t9
	lw	$v0,52($fp)
	addu	$v0,$v0,1
	sw	$v0,52($fp)
	b	$L45
$L44:
	lw	$v1,48($fp)
	li	$v0,1			# 0x1
	bne	$v1,$v0,$L45
	addu	$a0,$fp,32
	la	$t9,init_buffer
	jal	$ra,$t9
	lbu	$v1,40($fp)
	lw	$v0,76($fp)
	sw	$v0,16($sp)
	addu	$a0,$fp,32
	move	$a1,$v1
	move	$a2,$zero
	li	$a3,8			# 0x8
	la	$t9,write_to_buffer
	jal	$ra,$t9
	lw	$v0,76($fp)
	sw	$v0,16($sp)
	addu	$a0,$fp,32
	move	$a1,$zero
	move	$a2,$zero
	li	$a3,4			# 0x4
	la	$t9,write_to_buffer
	jal	$ra,$t9
	lw	$a0,76($fp)
	la	$t9,push_padding
	jal	$ra,$t9
	lw	$a0,76($fp)
	la	$t9,push_padding
	jal	$ra,$t9
	lw	$v0,52($fp)
	addu	$v0,$v0,1
	sw	$v0,52($fp)
$L45:
	lw	$a0,52($fp)
	li	$v0,1808400384			# 0x6bca0000
	ori	$v0,$v0,0x1af3
	mult	$a0,$v0
	mfhi	$v0
	sra	$v1,$v0,3
	sra	$v0,$a0,31
	subu	$v1,$v1,$v0
	move	$v0,$v1
	sll	$v0,$v0,2
	addu	$v0,$v0,$v1
	sll	$v0,$v0,2
	subu	$v0,$v0,$v1
	subu	$v0,$a0,$v0
	bne	$v0,$zero,$L48
	lw	$a0,48($fp)
	li	$v0,1431633920			# 0x55550000
	ori	$v0,$v0,0x5556
	mult	$a0,$v0
	mfhi	$v1
	sra	$v0,$a0,31
	subu	$v1,$v1,$v0
	move	$v0,$v1
	sll	$v0,$v0,1
	addu	$v0,$v0,$v1
	subu	$v0,$a0,$v0
	bne	$v0,$zero,$L48
	b	$L47
$L48:
	la	$a0,$LC1
	li	$a1,1			# 0x1
	li	$a2,1			# 0x1
	lw	$a3,76($fp)
	la	$t9,fwrite
	jal	$ra,$t9
$L47:
	move	$v0,$zero
	move	$sp,$fp
	lw	$ra,64($sp)
	lw	$fp,60($sp)
	addu	$sp,$sp,72
	j	$ra
	.end	encode_file
	.size	encode_file, .-encode_file
	.ident	"GCC: (GNU) 3.3.3 (NetBSD nb3 20040520)"
